﻿using System;
using System.Collections.Generic;
using System.Linq;
using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Audio;
using Microsoft.Xna.Framework.Content;
using Microsoft.Xna.Framework.GamerServices;
using Microsoft.Xna.Framework.Graphics;
using Microsoft.Xna.Framework.Input;
using Microsoft.Xna.Framework.Input.Touch;
using Microsoft.Xna.Framework.Media;
using GauntletFramework.StateManagment;
using GauntletFramework.StateManagment.Menu;
using GauntletFramework.StateManagment.Menu.Menus;
using GauntletFramework.Input;

namespace GauntletFramework
{
    public static class Settings
    {
        static public float SoundVolume = 0.5f;
        static public float MusicVolume = 0.5f;
    }

    public static class StaticGame
    {
        static public GNTMainGame Game = null;

        static public GraphicsDevice GraphicsDevice { get { return Game.GraphicsDevice; } }
        static public ContentManager Content { get { return Game.Content; } }
        static public StateStack StateStack { get { return Game.StateStack; } }
        static public BasicInput BasicInput { get { return Game.BasicInput; } }
        static public SpriteBatch SpriteBatch { get { return Game.SpriteBatch; } }

        static public Rectangle ScreenSize { get { return Game.GraphicsDevice.Viewport.TitleSafeArea; } }
        static public Vector2 ScreenCenter { get { return new Vector2(Game.GraphicsDevice.Viewport.TitleSafeArea.Width / 2 + Game.GraphicsDevice.Viewport.TitleSafeArea.X, Game.GraphicsDevice.Viewport.TitleSafeArea.Height / 2 + Game.GraphicsDevice.Viewport.TitleSafeArea.Y); } }

        static public Texture2D MonoColor { get { return Game.MonoColor; } }
    }
}
